/**
 */
package de.nordakademie.hausarbeit.stylesheet.util;

import de.nordakademie.hausarbeit.stylesheet.*;

import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notifier;

import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;

import org.eclipse.emf.ecore.EObject;

/**
 * <!-- begin-user-doc -->
 * The <b>Adapter Factory</b> for the model.
 * It provides an adapter <code>createXXX</code> method for each class of the model.
 * <!-- end-user-doc -->
 * @see de.nordakademie.hausarbeit.stylesheet.StylesheetPackage
 * @generated
 */
public class StylesheetAdapterFactory extends AdapterFactoryImpl
{
  /**
   * The cached model package.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  protected static StylesheetPackage modelPackage;

  /**
   * Creates an instance of the adapter factory.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  public StylesheetAdapterFactory()
  {
    if (modelPackage == null)
    {
      modelPackage = StylesheetPackage.eINSTANCE;
    }
  }

  /**
   * Returns whether this factory is applicable for the type of the object.
   * <!-- begin-user-doc -->
   * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
   * <!-- end-user-doc -->
   * @return whether this factory is applicable for the type of the object.
   * @generated
   */
  @Override
  public boolean isFactoryForType(Object object)
  {
    if (object == modelPackage)
    {
      return true;
    }
    if (object instanceof EObject)
    {
      return ((EObject)object).eClass().getEPackage() == modelPackage;
    }
    return false;
  }

  /**
   * The switch that delegates to the <code>createXXX</code> methods.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  protected StylesheetSwitch<Adapter> modelSwitch =
    new StylesheetSwitch<Adapter>()
    {
      @Override
      public Adapter caseStylesheet(Stylesheet object)
      {
        return createStylesheetAdapter();
      }
      @Override
      public Adapter caseColor(Color object)
      {
        return createColorAdapter();
      }
      @Override
      public Adapter caseFont(Font object)
      {
        return createFontAdapter();
      }
      @Override
      public Adapter caseRule(Rule object)
      {
        return createRuleAdapter();
      }
      @Override
      public Adapter caseHeader(Header object)
      {
        return createHeaderAdapter();
      }
      @Override
      public Adapter caseBody(Body object)
      {
        return createBodyAdapter();
      }
      @Override
      public Adapter caseText(Text object)
      {
        return createTextAdapter();
      }
      @Override
      public Adapter caseTitle(Title object)
      {
        return createTitleAdapter();
      }
      @Override
      public Adapter caseHighDiv(HighDiv object)
      {
        return createHighDivAdapter();
      }
      @Override
      public Adapter caseWideBorderTable(WideBorderTable object)
      {
        return createWideBorderTableAdapter();
      }
      @Override
      public Adapter caseNoBorderTable(NoBorderTable object)
      {
        return createNoBorderTableAdapter();
      }
      @Override
      public Adapter caseForm(Form object)
      {
        return createFormAdapter();
      }
      @Override
      public Adapter caseGreySubtitle(GreySubtitle object)
      {
        return createGreySubtitleAdapter();
      }
      @Override
      public Adapter caseInputField(InputField object)
      {
        return createInputFieldAdapter();
      }
      @Override
      public Adapter defaultCase(EObject object)
      {
        return createEObjectAdapter();
      }
    };

  /**
   * Creates an adapter for the <code>target</code>.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param target the object to adapt.
   * @return the adapter for the <code>target</code>.
   * @generated
   */
  @Override
  public Adapter createAdapter(Notifier target)
  {
    return modelSwitch.doSwitch((EObject)target);
  }


  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.Stylesheet <em>Stylesheet</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.Stylesheet
   * @generated
   */
  public Adapter createStylesheetAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.Color <em>Color</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.Color
   * @generated
   */
  public Adapter createColorAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.Font <em>Font</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.Font
   * @generated
   */
  public Adapter createFontAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.Rule <em>Rule</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.Rule
   * @generated
   */
  public Adapter createRuleAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.Header <em>Header</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.Header
   * @generated
   */
  public Adapter createHeaderAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.Body <em>Body</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.Body
   * @generated
   */
  public Adapter createBodyAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.Text <em>Text</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.Text
   * @generated
   */
  public Adapter createTextAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.Title <em>Title</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.Title
   * @generated
   */
  public Adapter createTitleAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.HighDiv <em>High Div</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.HighDiv
   * @generated
   */
  public Adapter createHighDivAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.WideBorderTable <em>Wide Border Table</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.WideBorderTable
   * @generated
   */
  public Adapter createWideBorderTableAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.NoBorderTable <em>No Border Table</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.NoBorderTable
   * @generated
   */
  public Adapter createNoBorderTableAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.Form <em>Form</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.Form
   * @generated
   */
  public Adapter createFormAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.GreySubtitle <em>Grey Subtitle</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.GreySubtitle
   * @generated
   */
  public Adapter createGreySubtitleAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.nordakademie.hausarbeit.stylesheet.InputField <em>Input Field</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.nordakademie.hausarbeit.stylesheet.InputField
   * @generated
   */
  public Adapter createInputFieldAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for the default case.
   * <!-- begin-user-doc -->
   * This default implementation returns null.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @generated
   */
  public Adapter createEObjectAdapter()
  {
    return null;
  }

} //StylesheetAdapterFactory
